				//1. INTERSECTION 2 INFORMATION
				int[] C = new int[] {12,13,14,15,16,17,107,108,109,110,111,115,119,120,121,122,247,248,};
				int[] CR = new int[] {14,107,119,};
				int[] CS = new int[] {13,111,115,248,};
				int[] C1 = new int[] {12,15,16,17,108,109,110,120,121,122,247,};
				int[] C2 = new int[] {12,13,15,16,17,108,109,110,111,115,120,121,122,247,248,};
				int[] C3 = new int[] {12,14,15,16,17,107,108,109,110,119,120,121,122,247,};
				int[] CI = new int[] {15,16,17,109,110,121,122,};
				int[][] SignalGroup = new int[][] {{2,5,2},{2,2,0},{2,2,1},{2,4,1},{2,4,0},{2,8,1},{2,3,2},};
				int[] Nstat = new int[] {16,9999999,16,16,16,16,37,37,32,16,37,37,37,37,48,16,16,9999999,};
				int[] Q = new int[] {3,3,3,3,3,3,9,9,6,3,9,9,9,9,9,3,3,3,};
				int[][] AC = new int[][] {{121,111},{15,111},{109,115},{16,115},{17,247},{110,12},{122,12},{12,13},{107,108},{119,120},{247,248},{14,15},{14,16},{14,17},{108,109},{108,110},{120,121},{120,122},};
				int[] TL = new int[] {0,2,3,5,6,};
				int[][] CO = new int[][] {{6,3},{6,0},{6,1},{5,0},{5,1},{3,0},{3,1},};
				int[][] RT = new int[][] {{1,2},{4,3},};
				int[] gMIN = new int[] {1,3,3,3,3,3,1,};
				int[] gMAX = new int[] {10,10,10,10,10,10,10,};
				double[] B_Car = new double[] {0.47,0.53,0.00,0.89,0.11,0.90,0.10,};
				double[] B_Bus = new double[] {0.00,0.00,1.00,1.00,0.00,1.00,0.00,};
				int[][] PubPath = new int[][] {{14,17,247,248,},{107,108,109,115,},{119,120,121,111,},};
				double[] LB = new double[] {-1.00,-1.00,0.00,-1.00,-1.00,350.83,0.00,271.93,543.86,-1.00,895.31,895.86,0.00,271.66,543.31,-1.00,702.83,1057.74,};
				double[] UB = new double[] {-1.00,-1.00,350.83,-1.00,-1.00,702.83,271.93,543.86,895.86,-1.00,1169.69,1165.94,271.66,543.31,895.31,-1.00,1057.74,1412.66,};
				int[] Weight = new int[] {17,999,1,4,5,6,2,7,10,11,999,999,3,8,12,13,9,999,};

				//2. GLOBAL PARAMETERS FOR ALL INTERSECTIONS
				int T = 10;	//optimization time steps
				double FreeV = Math.round(40 * 5280*10/3600)/10.0; //Free flow speed (ft/s)
				double BusSpeedRatio = 0.51; //Ratio of bus speed to free flow speed (less than or equal to 1.0)
				int DeltaT = 6; //Duration of each time step
				double Rho = 0.9; //Adjustment factor for Q for bus presence
				int[] Mode = new int[] {1,2}; //Mode numbers (car, bus)
				double[] ModeOccupancy = new double[] {1.2, 10}; //Occupancy of {car, bus}
				double[] LengthVeh = new double[] {22.0,35.0}; //Vehicle length of each mode (car,bus)
				int[] VehicleTypes = new int[] {100,101,200}; //{Non-Connected Passenger, Connected Passenger, Connected Bus}
				boolean Print = false;

				